--- lxpanel-0.10.1/plugins/task-button.c	2021-01-29 23:28:51.000000000 +0100
+++ lxpanel-0.10.1/plugins/task-button.c.new	2022-09-08 12:08:46.579475426 +0200
@@ -487,6 +487,9 @@ static void task_raise_window(TaskButton
     if ((tk->desktop != ALL_WORKSPACES) && (tk->desktop != tb->desktop))
         Xclimsgx(xscreen, RootWindowOfScreen(xscreen), a_NET_CURRENT_DESKTOP, tk->desktop, 0, 0, 0, 0);
 
+#if GTK_CHECK_VERSION(3, 0, 0)
+    Xclimsgx(xscreen, tk->win, a_NET_ACTIVE_WINDOW, 2, time, 0, 0, 0);
+#else
     /* Raise the window.  We can use NET_ACTIVE_WINDOW if the window manager supports it.
      * Otherwise, do it the old way with XMapRaised and XSetInputFocus. */
     if (tb->flags.use_net_active)
@@ -510,6 +513,7 @@ static void task_raise_window(TaskButton
         if (attr.map_state == IsViewable)
             XSetInputFocus(xdisplay, tk->win, RevertToNone, time);
     }
+#endif
 
     /* Change viewport if needed. */
     XWindowAttributes xwa;
